<%@page import="study.itwill.team5.admin.AdminItem"%>
<%@page import="study.itwill.jsp.WebHandler"%>
<%@page import="study.itwill.team5.admin.Admin"%>
<%@page import="study.itwill.common.PatternChecker"%>
<%@page import="study.itwill.common.DBHandler"%>
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@ page trimDirectiveWhitespaces="true" %>
<%@ page session="true" %>
<%
	WebHandler web = new WebHandler(request, response, out);
	AdminItem loginInfo = (AdminItem)session.getAttribute("ADMIN_INFO");
	
	// 로그인 정보가 없을 경우 로그인 페이지로 이동
	if (loginInfo == null) {
		web.goPage("/italia/login.jsp", "로그인이 필요합니다");
		return;
	}
%>
<%
	// 모든 파라미터 받기
	String seq = request.getParameter("seq");
	String admin_id = request.getParameter("admin_id");
	String admin_pw = request.getParameter("admin_pw");
	String admin_level = request.getParameter("admin_level");
	String admin_comment = request.getParameter("admin_comment");
	
	if (!PatternChecker.isValue(seq)) {
		out.print("<script type='text/javascript'>alert('일련번호 파라미터가 없습니다.');history.back();</script>");
		return;
	}
	if (!PatternChecker.isNum(seq)) {
		out.print("<script type='text/javascript'>alert('일련번호 파라미터가 부정확합니다.');history.back();</script>");
		return;
	}
	
	if (!PatternChecker.isValue(admin_pw)) {
		out.print("<script type='text/javascript'>alert('패스워드 파라미터가 없습니다.');history.back();</script>");
		return;
	}
	if (!PatternChecker.isEngNum(admin_pw)) {
		out.print("<script type='text/javascript'>alert('패스워드 파라미터가 부정확합니다.');history.back();</script>");
		return;
	}
	
	if (!PatternChecker.isValue(admin_level)) {
		out.print("<script type='text/javascript'>alert('레벨 파라미터가 없습니다.');history.back();</script>");
		return;
	}
	if (!PatternChecker.isNum(admin_level)) {
		out.print("<script type='text/javascript'>alert('레벨 파라미터가 부정확합니다.');history.back();</script>");
		return;
	}
	
	if (!PatternChecker.isValue(admin_comment)) {
		out.print("<script type='text/javascript'>alert('코멘트 파라미터가 없습니다.');history.back();</script>");
		return;
	}
	
	admin_comment = new String(admin_comment.getBytes("ISO-8859-1"), "UTF-8");
	
	// 숫자 파라미터에 대한 형변환
	int n_seq = Integer.parseInt(seq);
	int n_admin_level = Integer.parseInt(admin_level);
%>
<%@ include file="../dbcon.jsp"%>
<%
	/** 데이터 저장 */
	Admin admin = new Admin();
	boolean result = admin.editAdmin(n_seq, admin_id, admin_pw, n_admin_level, admin_comment);
	
	/** 접속 해제 */
	DBHandler.disconnect();
	
	if (!result) {
		out.print("<script type='text/javascript'>alert('수정에 실패했습니다..');history.back();</script>");
		return;
	}
	
	// 페이지 강제 이동 (JSP)
	response.sendRedirect("viewAdmin.jsp?seq=" + n_seq);
%>